Release 10.1A: OpenEdge Development:
Web Services
Invoking a method with a TABLE-HANDLE parameter (RPC/Encoded)
To invoke a method that passes a
TABLE-HANDLEparameter:
- The client application must create and send an XML Schema along with the data to fully describe the dynamic temp-table in the SOAP request message. The
TABLE-HANDLEparameter in a SOAP request or response consists of an XML<DataSet>element containing two child elements:- The client application must parse the XML Schema and data from the SOAP response message to make the
TABLE-HANDLEaccessible as native data within the application.This is the Progress 4GL prototype for a sample method,
dynttIO( ), that passes aTABLE-HANDLEparameter:
This is the RPC/Encoded WSDL sample definition for the
dynttIO( )method request message, which also defines aTABLE-HANDLEparameter (ttHandle). The parameter’s type is the standardTABLE-HANDLEparameter definition (TableHandleParam) specified in theTypessection of the WSDL:
The following WSDL sample shows the definition for
TableHandleParam, used for all dynamicTABLE-HANDLEparameters:
This is the declaration for a VB.NET client interface method (
dynTTIO( )) which has aTABLE-HANDLEparameter,ttHandle, as a VB.NET object:
The following VB.NET client code passes the dyntt object representing a
TABLE-HANDLEto thedynttIO( )method:
For more information on how you might manage
TABLE-HANDLEparameters in VB.NET, see the subsections on handlingTABLE-HANDLEparameters in Chapter A, "Developing a .NET Client to Access Progress 4GL Web Services," and in Java see the subsections on handlingTABLE-HANDLEparameters in Chapter B, " Developing a Java Client to Access Progress 4GL Web Services."This is the structure of the RPC/Encoded SOAP request message that the sample
dynttIOmethod sends to pass a dynamic temp-table that you create for thettHandleTABLE-HANDLEparameter (see the "Invoking a method with a TABLE-HANDLE parameter (RPC/Encoded)" section):
The
Note: Not shown is any required object ID that must be sent in the SOAP header for the object on whichttHandleTABLE-HANDLEparameter becomes an XML<ttHandle>element containing the<DataSet>element that contains the schema and the data.dynttIO( )is invoked.This is a sample XML Schema created by VB.NET for the
TABLE-HANDLEcontained by the sample<DataSet>element in the sample RPC/Encoded SOAP request:
Note the definition of the
<Data>element containing the data for the table, and how the column type information is specified within the<Item>element.This is a sample
<Data>element you would create to accompany the specified schema in the sample RPC/Encoded SOAP request, including the column values for the two rows initialized in the sample VB.NET code:
|
Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |